#pragma once
#include <typecomm.h>

struct arrayQueueManagerStruct
{
    pthread_mutex_t quelock;
    uint32_t quesize;
    uint32_t writeid;
    uint32_t readid;
    void **quedata;
};


void voidQueueInit(struct arrayQueueManagerStruct *quearray, uint32_t quesize);
int voidQueueFree(struct arrayQueueManagerStruct *quearray);
//容器已写入的数量。
uint32_t voidQueueCount(struct arrayQueueManagerStruct *quearray);
//容器剩余的数量。
uint32_t voidQueueRemain(struct arrayQueueManagerStruct *quearray);
int voidQueuePush(struct arrayQueueManagerStruct *quearray, void *indata);
int voidQueuePop(struct arrayQueueManagerStruct *quearray, void **outdata);

